﻿using System;
using System.Collections.Generic;

namespace DelegatesExample
{
    

    class PhotoProcessor
    {

        public void Process(string path, Action<Photo> methods)
        {
            Photo photo = new Photo(path);
            methods(photo);
        }

        //public delegate void FilterMethod(Photo photo);

        //public void Process(string path, FilterMethod methods)
        //{
        //    Photo photo = new Photo(path);
        //    methods(photo);
        //}

        //public void Process(string path, List<IPhotoFilter> filters )
        //{
        //    Photo photo = new Photo(path);

        //    foreach (var photoFilter in filters)
        //    {
        //        photoFilter.Apply(photo);
        //    }

        //    //PhotoFilters filters = new PhotoFilters();
        //    //filters.ApplyBrightnessFilter(photo);
        //    //filters.ApplyColorFilter(photo);
        //    //filters.ApplyContrastFilter(photo);
        //}
    }
}